package com.foreknow.demo3;


import java.util.Scanner;

/**
 * 游戏的规则类
 */
public class GameRule {
    //属性？
    Person person; //玩家
    Computer computer;
    int count; //对战次数

    public void initial(){
        //初始化属性
        person = new Person();
        computer = new Computer();
        count = 0;
    }

    //开始游戏
    public void startGame() {
        //调用初始化的方法
        initial();
        System.out.println("**************开始游戏****************");
        Scanner input = new Scanner(System.in);
        System.out.println("出拳规则：1. 剪刀  2. 石头  3. 布");
        System.out.println("请选择对方的角色（1. 刘备  2. 孙权  3. 曹操）");
        int role = input.nextInt();
        if(role == 1) {
            computer.setName("刘备");
        }else if(role == 2) {
            computer.setName("孙权");
        }else if(role == 3) {
            computer.setName("曹操");
        }
        System.out.println("您选择了"+computer.getName()+"对战");
        //先实现一局对战
        System.out.println("要开始吗（y/n）");
        String answer = input.next();
        if("y".equals(answer)) {
            int personFirst = person.showFirst();
            int computerFirst = computer.showFirst();
            //结果  &&与&的区别  true&&true=true  &&如果能通过第一个表达式的结果确定整个结果的话，第二个表达式不执行   & 左右两个表达式都要执行
            if((personFirst==1 && computerFirst==1) ||(personFirst==2 && computerFirst==2) || (personFirst==3 && computerFirst==3)) {
                System.out.println("平局");
            }else if((personFirst==1 && computerFirst==3) ||(personFirst==2 && computerFirst==1) || (personFirst==3 && computerFirst==2)){
                System.out.println("赢了");
            }else {
                System.out.println("输了");
            }
        }
    }

    public static void main(String[] args) {
        GameRule gameRule = new GameRule();
        gameRule.startGame();
    }

}
